package cn.tedu.charging.user.startup;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;

/**
 * 希望 在程序进程 完成启动的瞬间 调用RedisWarmUp初始化redis缓存数据
 * 当前预热启动类 写法 满足以下个条件
 * 1. 容器bean对象
 * 2. 实现ApplicationRunner接口 实现方法
 */
@Component
@Slf4j
public class RedisWarmUp implements ApplicationRunner {
    /*@Autowired
    private RedisTemplate redisTemplate;
    @Autowired
    private StationRepository stationRepository;*/
    /**
     * 容器启动完成后 会扫描当前程序容器中所有接口实现bean对象
     * 调用run方法 这个时候 容器中所有业务bean
     * controller service repository mapper都已经创建完毕
     */
    @Override
    public void run(ApplicationArguments args) throws Exception {
        log.info("当前程序启动完毕,可以执行初始化的缓存预热方法");
    }
}
